﻿namespace VkontakteSharp.Model
{
    public class User
    {
        [JsonMapping("uid", JsonMapping.MappingType.Primitive)]
        public long Id { get; set; }
        [JsonMapping("first_name", JsonMapping.MappingType.Primitive)]
        public string FirstName { get; set; }
        [JsonMapping("last_name", JsonMapping.MappingType.Primitive)]
        public string LastName { get; set; }
        [JsonMapping("nickname", JsonMapping.MappingType.Primitive)]
        public string Nickname { get; set; }
        [JsonMapping("screen_name", JsonMapping.MappingType.Primitive)]
        public string ScreenName { get; set; }
        [JsonMapping("sex", JsonMapping.MappingType.Primitive)]
        public int Sex { get; set; }
        [JsonMapping("bdate", JsonMapping.MappingType.Primitive)]
        public string BirthDate { get; set; }
        [JsonMapping("city", JsonMapping.MappingType.Primitive)]
        public string City { get; set; }
        [JsonMapping("country", JsonMapping.MappingType.Primitive)]
        public string Country { get; set; }
        [JsonMapping("timezone", JsonMapping.MappingType.Primitive)]
        public double Timezone { get; set; }
        [JsonMapping("photo", JsonMapping.MappingType.Primitive)]
        public string Photo { get; set; }
        [JsonMapping("photo_medium", JsonMapping.MappingType.Primitive)]
        public string PhotoMedium { get; set; }
        [JsonMapping("photo_big", JsonMapping.MappingType.Primitive)]
        public string PhotoBig { get; set; }
        [JsonMapping("has_mobile", JsonMapping.MappingType.Primitive)]
        public int HasMobile { get; set; }
        [JsonMapping("mobile_phone", JsonMapping.MappingType.Primitive)]
        public string MobilePhone { get; set; }
        [JsonMapping("home_phone", JsonMapping.MappingType.Primitive)]
        public string HomePhone { get; set; }
        [JsonMapping("rate", JsonMapping.MappingType.Primitive)]
        public string Rate { get; set; }
        [JsonMapping("online", JsonMapping.MappingType.Primitive)]
        public int Online { get; set; }
        [JsonMapping("counters", JsonMapping.MappingType.Class)]
        public Counters Counters { get; set; }
        [JsonMapping("name_gen", JsonMapping.MappingType.Primitive)]
        public string NameGen { get; set; }
        [JsonMapping("invited_by", JsonMapping.MappingType.Primitive)]
        public long InvitedBy { get; set; }
        [JsonMapping("verified", JsonMapping.MappingType.Primitive)]
        public int Verified { get; set; }
        [JsonMapping("last_seen", JsonMapping.MappingType.Class)]
        public LastSeen LastSeen { get; set; }
    }
}